package com.chao.demo.utils;

import cn.hutool.core.io.FileUtil;
import cn.hutool.extra.qrcode.QrCodeUtil;
import cn.hutool.extra.qrcode.QrConfig;

public class FastQrCodeUtil {


    /**
     * 普通二维码
     *
     * @param urlOrText  跳转地址或者文本
     * @param outFileUrl 输出二维码文件地址
     */
    public static void NormalQrCode(String urlOrText, String outFileUrl) {
        // 生成指定url对应的二维码到文件，宽和高都是300像素
        QrCodeUtil.generate(urlOrText, 300, 300, FileUtil.file(outFileUrl));
    }

    /**
     * 带宽高二维码
     *
     * @param urlOrText  跳转地址或者文本
     * @param width      宽
     * @param height     高
     * @param outFileUrl 输出二维码文件地址
     */
    public static void NormalQrCodeAndWH(String urlOrText, int width, int height, String outFileUrl) {
        QrCodeUtil.generate(urlOrText, width, height, FileUtil.file(outFileUrl));
    }

    /**
     * 带logo二维码
     *
     * @param urlOrText  跳转地址或者文本
     * @param logoUrl    logo地址
     * @param outFileUrl 输出二维码文件地址
     */
    public static void NormalQrCodeWithLogo(String urlOrText, String logoUrl, String outFileUrl) {
        QrCodeUtil.generate(urlOrText, QrConfig.create().setImg(logoUrl), FileUtil.file(outFileUrl));
    }
}
